<template>
    <input v-bind="$attrs" @input="inputData" :value="value"/>
</template>

<script>
    export default {
        name: "KInput",
        props:{
            // 添加一个value的props
            value: {
                type:String,
                required: true
            }
        },
        methods: {
            inputData(e) {
                // 派发一个input事件 + 添加一个value的props 组成v-model
                this.$emit("input", e.target.value);
                // 通过$parent派发事件，但是这种存在耦合性
                // 因为已经确定父组件是k-form-item
                // 解决办法：一般需要递归查找父组件（name === "KFormItem"）
                this.$parent.$emit("validate")
            }
        },
    }
</script>

<style scoped>

</style>
